#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
#
# $Log: Makefile.in,v $
# Revision 1.1  2008/02/19 19:02:11  utke
# adding new version 2.8.0  failed in previous commit
#
# Revision 1.5  2005/04/05 09:21:56  gareth
# Fix for jira 1397. *Much* nicer make output. Thanks to Axel Weib.
#
# Revision 1.4  2004/09/08 13:56:07  peiyongz
# Apache License Version 2.0
#
# Revision 1.3  2004/08/11 18:40:04  peiyongz
# XSValue
#
# Revision 1.2  2004/07/09 16:11:32  peiyongz
# Build on HP-Itanium, aCC A.05.52
#
# Revision 1.1  2003/09/16 14:33:36  neilg
# PSVI/schema component model classes, with Makefile/configuration changes necessary to build them
#

PLATFORM = @platform@
CC  = @cc@
CXX = @cxx@
CXXVER = @cxxver@
GCC = @GCC@
GXX = @GXX@
CXXFLAGS = @cxxflags@
CFLAGS = @cflags@
PREFIX = @prefix@
PREFIX_INCLUDE = @prefix_include@
LDFLAGS = @ldflags@
LIBS = @libs@
OSVER = @osver@
USELIBWWW = @uselibwww@
MESSAGELOADER = @messageloader@
TRANSCODER = @transcoder@
THREADS = @threads@
LIBTYPE = @libtype@
ARCH = @host_cpu@

include ../../Makefile.incl

MODULE = framework
SUBMODULE = psvi

PSVI_CPP_PUBHEADERS = \
	PSVIAttribute.hpp \
	PSVIAttributeList.hpp \
	PSVIElement.hpp \
	PSVIHandler.hpp \
	PSVIItem.hpp \
	XSAnnotation.hpp \
	XSAttributeDeclaration.hpp \
	XSAttributeGroupDefinition.hpp \
	XSAttributeUse.hpp \
	XSComplexTypeDefinition.hpp \
	XSConstants.hpp \
	XSElementDeclaration.hpp \
	XSFacet.hpp \
	XSIDCDefinition.hpp \
	XSModel.hpp \
	XSModelGroup.hpp \
	XSModelGroupDefinition.hpp \
	XSMultiValueFacet.hpp \
	XSNamedMap.hpp \
	XSNamespaceItem.hpp \
	XSNotationDeclaration.hpp \
	XSObject.hpp \
	XSParticle.hpp \
	XSSimpleTypeDefinition.hpp \
	XSTypeDefinition.hpp \
	XSValue.hpp \
	XSWildcard.hpp 

PSVI_C_FILES = \
	XSNamedMap.c

PSVI_CPP_OBJECTS = \
	PSVIAttribute.$(TO) \
	PSVIAttributeList.$(TO) \
	PSVIElement.$(TO) \
	PSVIItem.$(TO) \
	XSAnnotation.$(TO) \
	XSAttributeDeclaration.$(TO) \
	XSAttributeGroupDefinition.$(TO) \
	XSAttributeUse.$(TO) \
	XSComplexTypeDefinition.$(TO) \
	XSIDCDefinition.$(TO) \
	XSElementDeclaration.$(TO) \
	XSFacet.$(TO) \
	XSModel.$(TO) \
	XSModelGroup.$(TO) \
	XSModelGroupDefinition.$(TO) \
	XSMultiValueFacet.$(TO) \
	XSNamespaceItem.$(TO) \
	XSNotationDeclaration.$(TO) \
	XSObject.$(TO) \
	XSParticle.$(TO) \
	XSSimpleTypeDefinition.$(TO) \
	XSTypeDefinition.$(TO) \
	XSValue.$(TO) \
	XSWildcard.$(TO) 

all::	includes $(PSVI_CPP_OBJECTS)

includes::	pubheaders $(PSVI_C_FILES)

pubheaders::
	$Qmkdir -p $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)
	@echo "  (CP)  $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)"
	$Q$(CP) $(PSVI_CPP_PUBHEADERS) $(PSVI_C_FILES) $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)

# this may generate unnecessary dependencies, but it makes life easier
depend:: includes
	@echo "  (DEP)"
	$Q$(MAKE_DEPEND) $(XML_INCL)  *.cpp > $(DEPFILE)

clean::
	@echo "Making clean in $(MODULE)/$(SUBMODULE) ..."
	$(RM2) $(addprefix $(XML_OBJ_DIR)/,$(PSVI_CPP_OBJECTS))

distclean::	clean
	$(RM) Makefile $(DEPFILE)
	@echo "Removing all $(MODULE)/$(SUBMODULE) header files ..."
	$(RM2) $(addprefix $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)/,$(PSVI_CPP_PUBHEADERS))
	$(RM2) $(addprefix $(XML_INC_DIR)/$(MODULE)/$(SUBMODULE)/,$(PSVI_C_FILES))

install::
	-mkdir -p $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
	$(CP) $(PSVI_CPP_PUBHEADERS) $(PSVI_C_FILES) $(DESTDIR)$(PREFIX_INCLUDE)/$(MODULE)/$(SUBMODULE)
